<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
<HEAD>
   <TITLE>class  OSGPARTICLE_EXPORT osgParticle::Emitter</TITLE>
   <META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">

<H2>class  OSGPARTICLE_EXPORT <A HREF="#DOC.DOCU">osgParticle::Emitter</A></H2></H2><BLOCKQUOTE>An abstract base class for particle emitters.</BLOCKQUOTE>
<HR>

<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=125>
<param name=classes value="Mosg::Node,M,CParticleProcessor,MParticleProcessor.html,CEmitter,MEmitter.html,CModularEmitter,MModularEmitter.html">
<param name=before value="M,M,M,M^_">
<param name=after value="Md_SP,Md_,M,M">
<param name=indent value="0,1,2,2">
<param name=arrowdir value="down">
</APPLET>
<HR>

<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.4.1">Emitter</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.4.2">Emitter</A></B>(const <!1><A HREF="Emitter.html#DOC.2.4.2">Emitter</A> &amp;copy, const osg::CopyOp &amp;copyop = osg::CopyOp::SHALLOW_COPY)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   const char* <B><A HREF="#DOC.2.4.3">libraryName</A></B>() const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   const char* <B><A HREF="#DOC.2.4.4">className</A></B>() const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   bool <B><A HREF="#DOC.2.4.5">isSameKindAs</A></B>(const osg::Object* obj) const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   void <B><A HREF="#DOC.2.4.6">accept</A></B>(osg::NodeVisitor&amp; nv)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   const <!1><A HREF="Particle.html">Particle</A>&amp; <B><A HREF="#DOC.2.4.12">getParticleTemplate</A></B>() const 
<DD><I>Get the particle template</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.4.13">setParticleTemplate</A></B>(const <!1><A HREF="Particle.html">Particle</A> &amp;p)
<DD><I>Set the particle template (particle is copied)</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   bool <B><A HREF="#DOC.2.4.14">getUseDefaultTemplate</A></B>() const 
<DD><I>Return whether the particle system's default template should be used</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.4.15">setUseDefaultTemplate</A></B>(bool v)
<DD><I>Set whether the default particle template should be used.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.4.16">process</A></B>(double dt)
</DL></P>

<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   <B><A HREF="#DOC.2.4.7">~Emitter</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Emitter.html">Emitter</A>&amp; <B><A HREF="#DOC.2.4.8">operator=</A></B>(const <!1><A HREF="Emitter.html">Emitter</A> &amp;)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   void <B><A HREF="#DOC.2.4.9">emit</A></B>(double dt) = 0
</DL></P>

</DL>
<HR><H3>Inherited from <A HREF="ParticleProcessor.html">ParticleProcessor</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline   <!1><A HREF="ParticleProcessor.html#DOC.2.14.1">ReferenceFrame</A> <B>getReferenceFrame</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>traverse</B>(osg::NodeVisitor &amp;nv)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   ParticleProcessor::ReferenceFrame <B>getReferenceFrame</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>setReferenceFrame</B>(<!1><A HREF="ParticleProcessor.html#DOC.2.14.1">ReferenceFrame</A> rf)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   bool <B>isEnabled</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>setEnabled</B>(bool v)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   <!1><A HREF="ParticleSystem.html">ParticleSystem</A>* <B>getParticleSystem</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const <!1><A HREF="ParticleSystem.html">ParticleSystem</A>* <B>getParticleSystem</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>setParticleSystem</B>(<!1><A HREF="ParticleSystem.html">ParticleSystem</A>* ps)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const bool <B>computeBound</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const osg::Matrix&amp; <B>getLocalToWorldMatrix</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const osg::Matrix&amp; <B>getWorldToLocalMatrix</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   osg::Vec3 <B>transformLocalToWorld</B>(const osg::Vec3 &amp;P)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   osg::Vec3 <B>transformWorldToLocal</B>(const osg::Vec3 &amp;P)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   osg::Vec3 <B>rotateLocalToWorld</B>(const osg::Vec3 &amp;P)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   osg::Vec3 <B>rotateWorldToLocal</B>(const osg::Vec3 &amp;P)
</DL></P>

<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>enum  <B>ReferenceFrame</B>
</DL></P>

</DL>

<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>An abstract base class for particle emitters.
Descendant classes must override the <CODE>emit()</CODE> method to generate new particles by
calling the <CODE>ParticleSystem::createParticle()</CODE> method on the particle system associated
to the emitter.</BLOCKQUOTE>
<DL>

<A NAME="Emitter"></A>
<A NAME="DOC.2.4.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Emitter()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Emitter"></A>
<A NAME="DOC.2.4.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Emitter(const <!1><A HREF="Emitter.html#DOC.2.4.2">Emitter</A> &amp;copy, const osg::CopyOp &amp;copyop = osg::CopyOp::SHALLOW_COPY)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="libraryName"></A>
<A NAME="DOC.2.4.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   const char* libraryName() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="className"></A>
<A NAME="DOC.2.4.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   const char* className() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="isSameKindAs"></A>
<A NAME="DOC.2.4.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   bool isSameKindAs(const osg::Object* obj) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="accept"></A>
<A NAME="DOC.2.4.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   void accept(osg::NodeVisitor&amp; nv)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="~Emitter"></A>
<A NAME="DOC.2.4.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   ~Emitter()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator="></A>
<A NAME="DOC.2.4.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Emitter.html">Emitter</A>&amp; operator=(const <!1><A HREF="Emitter.html">Emitter</A> &amp;)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="emit"></A>
<A NAME="DOC.2.4.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   void emit(double dt) = 0</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getParticleTemplate"></A>
<A NAME="DOC.2.4.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   const <!1><A HREF="Particle.html">Particle</A>&amp; getParticleTemplate() const </B></TT>
<DD>Get the particle template
<DL><DT><DD></DL><P>
<A NAME="setParticleTemplate"></A>
<A NAME="DOC.2.4.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void setParticleTemplate(const <!1><A HREF="Particle.html">Particle</A> &amp;p)</B></TT>
<DD>Set the particle template (particle is copied)
<DL><DT><DD></DL><P>
<A NAME="getUseDefaultTemplate"></A>
<A NAME="DOC.2.4.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   bool getUseDefaultTemplate() const </B></TT>
<DD>Return whether the particle system's default template should be used
<DL><DT><DD></DL><P>
<A NAME="setUseDefaultTemplate"></A>
<A NAME="DOC.2.4.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void setUseDefaultTemplate(bool v)</B></TT>
<DD>Set whether the default particle template should be used.
When this flag is true, the particle template is ignored, and the
particle system's default template is used instead.
<DL><DT><DD></DL><P>
<A NAME="process"></A>
<A NAME="DOC.2.4.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void process(double dt)</B></TT>
<DL><DT><DD></DL><P></DL>
<HR>
<DL><DT><B>Direct child classes:
</B><DD><A HREF="ModularEmitter.html">ModularEmitter</A><BR>
</DL>

<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>
